There are some applications in which it is necessary or highly advantageous to be able to prove that a file has not been altered. By non-alterable it is meant that the data in the file can not be altered without leaving some sort of audit trail concerning that change. For example, insurance policies, while being written, are subject to change while they are being negotiated or compiled; once the insurance policy is issued, both the insurance company and policy holder want to be sure any change to that policy is detected. Similar requirements for permanence exist for medical records, images, and governmental compliance requirements.
Typical solutions offered to show that a file has not been altered may include WORM (Write-Once-Read-Many) storage. WORM storage is generally available in two types, a hardware or media implementation, which tends to be expensive, and a software implementation. Due to the high cost of the WORM media i.e. CDs or DVD ROMS, WORM is usually created in software and uses hard disks as the underlying storage media. The software WORM products are vulnerable to insider attacks by those with full access privileges and control of the storage system that can easily compromise the integrity of data stored on the disk. As well, typical systems do not provide for both existence and non-existence proofs.